package com.lyl.servicestatistics.task;

import com.lyl.commonutils.DateUtils;
import com.lyl.servicestatistics.service.StatisticsDailyService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

// spring 提供的定时器, 他跟springboot 一家人 不导包
//import org.springframework.scheduling.annotation.Scheduled;


import java.util.Date;

/**
 * 1.导入依赖
 *spring 提供的定时器,他跟springboot 一家人 不导包
  //import org.springframework.scheduling.annotation.Scheduled;
 */
@Component
public class ScheduledTask {
    @Autowired
    private StatisticsDailyService dailyService;

    /**
     * 测试, 每隔5秒钟执行一下
     *
     */
//    @Scheduled(cron = "0 0/1 * * * ?")
    public void task1() {
        System.out.println("*********++++++++++++*****执行了");
    }

    /**
     * 每天凌晨1点执行定时
     * 获取redis中存取的 前一天
     * 登录量,播放量, 注册量, 课程购买总金额等数据 插入到数据库中
     */
    @Scheduled(cron = "0 0 1 * * ?")
    public void task2() {
        //获取上一天的日期
        String day = DateUtils.formatDate(new Date(), -1);
        dailyService.createStatisticsByDay(day);
    }
}
